JIT Compiler
JIT compileをするCompiler
SpiderMonkeyのJIT Compiler
https://html5experts.jp/chikoski/18964/
https://blog.mozilla.org/luke/2014/01/14/asm-js-aot-compilation-and-startup-performance/
二段階のJIT
ベースラインJIT
nullチェックなど
冗長なコードを出力
ある程度の型情報があつまるとコンパイル
何が二段階?
bail
コンパイル結果を捨てる
型情報を推定後、違う型として使われた時など
捨てないと、その処理は使えない
ってことはTypeScriptを使うと、bailされる回数も減るのか #??
https://twitter.com/miura1729/status/1701468640556806312
stefan-marr.de/2023/09/pliss-summer-school/ ここに載っているスライドすげー。特に後の奴。かなり最新のJITコンパイラの技術が解説されている。前の奴もインタープリタの最適化(JITつかわずに)という余り解説されていない話があって興味深い
https://stefan-marr.de/2023/09/pliss-summer-school/